package com.fare.taluo.fetl.domain.repository;

import java.util.List;

import com.fare.taluo.base.ddd.repository.IBaseRepository;
import com.fare.taluo.fetl.domain.entity.PlaneInfoJsonEntity;
import com.fare.taluo.fetl.domain.entity.SinglePlaneInfoEntity;

public interface ISinglePlaneInfoRepository extends IBaseRepository {
	/**
	 * 查询出单个
	 * @param hbaseKey  官网或渠道key
	 * @param fromCity   出发城市三字码
	 * @param toCity	到达城市三字码
	 * @param flightBatchDate 出发日期  ‘2014-04-08’
	 * @param flightNo 航班号
	 * @return
	 */
	public List<SinglePlaneInfoEntity> findPlaneInfoProperty(String hbaseKey,
			String fromCity, String toCity, String flightBatchDate,
			String flightNo);
	/**
	 * 查询出planeinfo与planejson两个对象
	 * @param hbaseKey  官网或渠道key
	 * @param fromCity   出发城市三字码
	 * @param toCity	到达城市三jsonId字码
	 * @param flightBatchDate 出发日期  ‘2014-04-08’
	 * @param flightNo 航班号
	 * @return
	 */
	public List<SinglePlaneInfoEntity> findPlaneInfoPropertyAll(String hbaseKey,
			String fromCity, String toCity, String flightBatchDate,
			String flightNo);
	/**
	 * 查询出planeinfo与planejson两个对象
	 * @param hbaseKey  官网或渠道key
	 * @param fromCity   出发城市三字码
	 * @param toCity	到达城市三jsonId字码
	 * @param flightBatchDate 出发日期  ‘2014-04-08’
	 * @param flightNo 航班号
	 * @return
	 */
	public List<SinglePlaneInfoEntity> findPlaneInfoPropertyAll(String hbaseKey,String carrierKey,
			String fromCity, String toCity, String flightBatchDate,
			String flightNo);
	/**
	 * 根据对应关系查询出planeinfo下的planejson对象
	 * @param jsonId  对应ID
	 * @return
	 */
	public PlaneInfoJsonEntity getJsonEntity(Long jsonId);
	

	public List<SinglePlaneInfoEntity> findPlaneInfoByCondition(String grabChannel,String carrierKey,
			String fromCity, String toCity, String flightBatchDate,
			String flightNo);
}
